<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  <title>std.cpuid</title>
  <link href="./css/style.css" rel="stylesheet" type="text/css"/>
  <!-- <link href="./img/icon.png" rel="icon" type="image/png"/> -->
  <script type="text/javascript" src="./js/jquery.js"></script>
  <script type="text/javascript" src="./js/modules.js"></script>
  <script type="text/javascript" src="./js/quicksearch.js"></script>
  <script type="text/javascript" src="./js/navigation.js"></script>
  <!--<script type="text/javascript" src="./js/jquery.treeview.js"></script>-->
  <script type="text/javascript">
    var g_moduleFQN = "std.cpuid";
  </script>
  
</head>
<body>
<div id="content">
  <h1><a href="./htmlsrc/std.cpuid.html" class="symbol">std.cpuid</a></h1>
  
<div class="summary">Identify the characteristics of the host CPU.</div>
Implemented according to:
<p class="bl"/>
- AP-485 Intel(C) Processor Identification and the CPUID Instruction
	<a href="http://www.intel.com/design/xeon/applnots/241618.htm">http://www.intel.com/design/xeon/applnots/241618.htm</a>
<p class="bl"/>
- Intel(R) 64 and IA-32 Architectures Software Developer's Manual, Volume 2A: Instruction Set Reference, A-M
	<a href="http://developer.intel.com/design/pentium4/manuals/index_new.htm">http://developer.intel.com/design/pentium4/manuals/index_new.htm</a>
<p class="bl"/>
- AMD CPUID Specification Publication # 25481
	<a href="http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/25481.pdf">http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/25481.pdf</a>
<p class="sec_header">Example:</p><pre class="d_code">
<span class="k">import</span> <span class="i">std</span>.<span class="i">cpuid</span>;
<span class="k">import</span> <span class="i">std</span>.<span class="i">stdio</span>;

<span class="k">void</span> <span class="i">main</span>()
{
    <span class="i">writefln</span>(<span class="i">std</span>.<span class="i">cpuid</span>.<span class="i">toString</span>());
}
</pre>
<p class="sec_header">Authors:</p>Tomas Lindquist Olsen &lt;tomas@famolsen.dk&gt;
		(slightly altered by Walter Bright)
<p class="sec_header"><span class="red">Bugs:</span></p>Only works on x86 CPUs
<dl>
<dt class="decl">char[] <a class="symbol _function" name="toString" href="./htmlsrc/std.cpuid.html#L370" kind="function" beg="370" end="370">toString</a><span class="params">()</span>; <a title="Permalink to this symbol" href="#toString" class="symlink">¶</a><a title="Go to the HTML source file" class="srclink" href="./htmlsrc/std.cpuid.html#L370">#</a></dt>
<dd class="ddef"></dd>
<dt class="decl">char[] <a class="symbol _function" name="vendor" href="./htmlsrc/std.cpuid.html#L372" kind="function" beg="372" end="372">vendor</a><span class="params">()</span>; <a title="Permalink to this symbol" href="#vendor" class="symlink">¶</a><a title="Go to the HTML source file" class="srclink" href="./htmlsrc/std.cpuid.html#L372">#</a></dt>
<dd class="ddef"></dd>
<dt class="decl">char[] <a class="symbol _function" name="processor" href="./htmlsrc/std.cpuid.html#L373" kind="function" beg="373" end="373">processor</a><span class="params">()</span>; <a title="Permalink to this symbol" href="#processor" class="symlink">¶</a><a title="Go to the HTML source file" class="srclink" href="./htmlsrc/std.cpuid.html#L373">#</a></dt>
<dd class="ddef"></dd>
<dt class="decl">bool <a class="symbol _function" name="mmx" href="./htmlsrc/std.cpuid.html#L375" kind="function" beg="375" end="375">mmx</a><span class="params">()</span>; <a title="Permalink to this symbol" href="#mmx" class="symlink">¶</a><a title="Go to the HTML source file" class="srclink" href="./htmlsrc/std.cpuid.html#L375">#</a></dt>
<dd class="ddef"></dd>
<dt class="decl">bool <a class="symbol _function" name="fxsr" href="./htmlsrc/std.cpuid.html#L376" kind="function" beg="376" end="376">fxsr</a><span class="params">()</span>; <a title="Permalink to this symbol" href="#fxsr" class="symlink">¶</a><a title="Go to the HTML source file" class="srclink" href="./htmlsrc/std.cpuid.html#L376">#</a></dt>
<dd class="ddef"></dd>
<dt class="decl">bool <a class="symbol _function" name="sse" href="./htmlsrc/std.cpuid.html#L377" kind="function" beg="377" end="377">sse</a><span class="params">()</span>; <a title="Permalink to this symbol" href="#sse" class="symlink">¶</a><a title="Go to the HTML source file" class="srclink" href="./htmlsrc/std.cpuid.html#L377">#</a></dt>
<dd class="ddef"></dd>
<dt class="decl">bool <a class="symbol _function" name="sse2" href="./htmlsrc/std.cpuid.html#L378" kind="function" beg="378" end="378">sse2</a><span class="params">()</span>; <a title="Permalink to this symbol" href="#sse2" class="symlink">¶</a><a title="Go to the HTML source file" class="srclink" href="./htmlsrc/std.cpuid.html#L378">#</a></dt>
<dd class="ddef"></dd>
<dt class="decl">bool <a class="symbol _function" name="sse3" href="./htmlsrc/std.cpuid.html#L379" kind="function" beg="379" end="379">sse3</a><span class="params">()</span>; <a title="Permalink to this symbol" href="#sse3" class="symlink">¶</a><a title="Go to the HTML source file" class="srclink" href="./htmlsrc/std.cpuid.html#L379">#</a></dt>
<dd class="ddef"></dd>
<dt class="decl">bool <a class="symbol _function" name="ssse3" href="./htmlsrc/std.cpuid.html#L380" kind="function" beg="380" end="380">ssse3</a><span class="params">()</span>; <a title="Permalink to this symbol" href="#ssse3" class="symlink">¶</a><a title="Go to the HTML source file" class="srclink" href="./htmlsrc/std.cpuid.html#L380">#</a></dt>
<dd class="ddef"></dd>
<dt class="decl">bool <a class="symbol _function" name="amd3dnow" href="./htmlsrc/std.cpuid.html#L382" kind="function" beg="382" end="382">amd3dnow</a><span class="params">()</span>; <a title="Permalink to this symbol" href="#amd3dnow" class="symlink">¶</a><a title="Go to the HTML source file" class="srclink" href="./htmlsrc/std.cpuid.html#L382">#</a></dt>
<dd class="ddef"></dd>
<dt class="decl">bool <a class="symbol _function" name="amd3dnowExt" href="./htmlsrc/std.cpuid.html#L383" kind="function" beg="383" end="383">amd3dnowExt</a><span class="params">()</span>; <a title="Permalink to this symbol" href="#amd3dnowExt" class="symlink">¶</a><a title="Go to the HTML source file" class="srclink" href="./htmlsrc/std.cpuid.html#L383">#</a></dt>
<dd class="ddef"></dd>
<dt class="decl">bool <a class="symbol _function" name="amdMmx" href="./htmlsrc/std.cpuid.html#L384" kind="function" beg="384" end="384">amdMmx</a><span class="params">()</span>; <a title="Permalink to this symbol" href="#amdMmx" class="symlink">¶</a><a title="Go to the HTML source file" class="srclink" href="./htmlsrc/std.cpuid.html#L384">#</a></dt>
<dd class="ddef"></dd>
<dt class="decl">bool <a class="symbol _function" name="ia64" href="./htmlsrc/std.cpuid.html#L386" kind="function" beg="386" end="386">ia64</a><span class="params">()</span>; <a title="Permalink to this symbol" href="#ia64" class="symlink">¶</a><a title="Go to the HTML source file" class="srclink" href="./htmlsrc/std.cpuid.html#L386">#</a></dt>
<dd class="ddef"></dd>
<dt class="decl">bool <a class="symbol _function" name="amd64" href="./htmlsrc/std.cpuid.html#L387" kind="function" beg="387" end="387">amd64</a><span class="params">()</span>; <a title="Permalink to this symbol" href="#amd64" class="symlink">¶</a><a title="Go to the HTML source file" class="srclink" href="./htmlsrc/std.cpuid.html#L387">#</a></dt>
<dd class="ddef"></dd>
<dt class="decl">bool <a class="symbol _function" name="hyperThreading" href="./htmlsrc/std.cpuid.html#L389" kind="function" beg="389" end="389">hyperThreading</a><span class="params">()</span>; <a title="Permalink to this symbol" href="#hyperThreading" class="symlink">¶</a><a title="Go to the HTML source file" class="srclink" href="./htmlsrc/std.cpuid.html#L389">#</a></dt>
<dd class="ddef"></dd>
<dt class="decl">uint <a class="symbol _function" name="threadsPerCPU" href="./htmlsrc/std.cpuid.html#L390" kind="function" beg="390" end="390">threadsPerCPU</a><span class="params">()</span>; <a title="Permalink to this symbol" href="#threadsPerCPU" class="symlink">¶</a><a title="Go to the HTML source file" class="srclink" href="./htmlsrc/std.cpuid.html#L390">#</a></dt>
<dd class="ddef"></dd>
<dt class="decl">uint <a class="symbol _function" name="coresPerCPU" href="./htmlsrc/std.cpuid.html#L391" kind="function" beg="391" end="391">coresPerCPU</a><span class="params">()</span>; <a title="Permalink to this symbol" href="#coresPerCPU" class="symlink">¶</a><a title="Go to the HTML source file" class="srclink" href="./htmlsrc/std.cpuid.html#L391">#</a></dt>
<dd class="ddef"></dd>
<dt class="decl">bool <a class="symbol _function" name="intel" href="./htmlsrc/std.cpuid.html#L393" kind="function" beg="393" end="393">intel</a><span class="params">()</span>; <a title="Permalink to this symbol" href="#intel" class="symlink">¶</a><a title="Go to the HTML source file" class="srclink" href="./htmlsrc/std.cpuid.html#L393">#</a></dt>
<dd class="ddef"></dd>
<dt class="decl">bool <a class="symbol _function" name="amd" href="./htmlsrc/std.cpuid.html#L394" kind="function" beg="394" end="394">amd</a><span class="params">()</span>; <a title="Permalink to this symbol" href="#amd" class="symlink">¶</a><a title="Go to the HTML source file" class="srclink" href="./htmlsrc/std.cpuid.html#L394">#</a></dt>
<dd class="ddef"></dd>
<dt class="decl">uint <a class="symbol _function" name="stepping" href="./htmlsrc/std.cpuid.html#L396" kind="function" beg="396" end="396">stepping</a><span class="params">()</span>; <a title="Permalink to this symbol" href="#stepping" class="symlink">¶</a><a title="Go to the HTML source file" class="srclink" href="./htmlsrc/std.cpuid.html#L396">#</a></dt>
<dd class="ddef"></dd>
<dt class="decl">uint <a class="symbol _function" name="model" href="./htmlsrc/std.cpuid.html#L397" kind="function" beg="397" end="397">model</a><span class="params">()</span>; <a title="Permalink to this symbol" href="#model" class="symlink">¶</a><a title="Go to the HTML source file" class="srclink" href="./htmlsrc/std.cpuid.html#L397">#</a></dt>
<dd class="ddef"></dd>
<dt class="decl">uint <a class="symbol _function" name="family" href="./htmlsrc/std.cpuid.html#L398" kind="function" beg="398" end="398">family</a><span class="params">()</span>; <a title="Permalink to this symbol" href="#family" class="symlink">¶</a><a title="Go to the HTML source file" class="srclink" href="./htmlsrc/std.cpuid.html#L398">#</a></dt>
<dd class="ddef"></dd></dl>
</div>
<div id="footer">
  <p>Public Domain</p>
  <p>Page generated by <a href="http://code.google.com/p/dil">dil</a> on Fri Dec 26 03:40:06 2008. Rendered by <a href="http://code.google.com/p/dil/wiki/Kandil">kandil</a>.</p>
</div>
</body>
</html>